package com.beyond.trace.service.warn;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.beyond.trace.domain.dto.warn.WarnRuleListDTO;
import com.beyond.trace.domain.pojo.warn.WarnRulePageQuery;
import com.beyond.trace.domain.warn.WarnRule;

/**
 * @ClassName: WarnRuleService
 * @author: z越
 * @date: 2023/2/24  9:57
 * @description 预警规则接口类
 */
public interface WarnRuleService extends IService<WarnRule> {

    /**
     * @author z越
     * @description 分页查询数据
     * @date 2023/2/24 14:33
     * @params query 参数
     * @returns 结果集
     */
    Page<WarnRuleListDTO> findAllPages(WarnRulePageQuery query);

    /**
     * @author z越
     * @description 开启规则
     * @date 2023/2/24 14:33
     * @params id 主键id
     * @returns int
     */
    int openRule(Long id);

    /**
     * @author z越
     * @description 关闭规则
     * @date 2023/2/24 14:33
     * @params id 主键id
     * @returns int
     */
    int offRule(Long id);

    /**
     * @author z越
     * @description 删除数据（支持批量删除）
     * @date 2023/2/24 14:34
     * @params ids 设备id集合
     * @returns int
     */
    int batchDelete(String ids) throws Exception;
}
